package com.nt.oam.service;

import java.util.List;
import com.nt.oam.domain.AntAccessDeviceAsset;
import com.baomidou.mybatisplus.extension.service.IService;
import com.nt.oam.vo.asset.AccessDeviceAssetVo;

/**
 * 接入设备资产Service接口
 *
 * @author JZFeng
 * @date 2025-02-05
 */
public interface IAntAccessDeviceAssetService extends IService<AntAccessDeviceAsset> {
    /**
     * 查询接入设备资产
     *
     * @param accessDeviceId 接入设备资产主键
     * @return 接入设备资产
     */
    public AntAccessDeviceAsset selectAntAccessDeviceAssetByAccessDeviceId(Long accessDeviceId);

    /**
     * 查询接入设备资产列表
     *
     * @param antAccessDeviceAsset 接入设备资产
     * @return 接入设备资产集合
     */
    public List<AntAccessDeviceAsset> selectAntAccessDeviceAssetList(AntAccessDeviceAsset antAccessDeviceAsset);

    /**
     * 新增接入设备资产
     *
     * @param antAccessDeviceAsset 接入设备资产
     * @return 结果
     */
    public int insertAntAccessDeviceAsset(AntAccessDeviceAsset antAccessDeviceAsset);

    /**
     * 修改接入设备资产
     *
     * @param antAccessDeviceAsset 接入设备资产
     * @return 结果
     */
    public int updateAntAccessDeviceAsset(AntAccessDeviceAsset antAccessDeviceAsset);

    /**
     * 批量删除接入设备资产
     *
     * @param accessDeviceIds 需要删除的接入设备资产主键集合
     * @return 结果
     */
    public int deleteAntAccessDeviceAssetByAccessDeviceIds(Long[] accessDeviceIds);

    /**
     * 删除接入设备资产信息
     *
     * @param accessDeviceId 接入设备资产主键
     * @return 结果
     */
    public int deleteAntAccessDeviceAssetByAccessDeviceId(Long accessDeviceId);

    /**
     * 非系统----查询接入设备资产
     *
     * @param accessDeviceId 接入设备资产主键
     * @return 接入设备资产
     */
    public AccessDeviceAssetVo selectAccessDeviceAssetMessage(Long accessDeviceId);
    /**
     * 通过项目id来查询接入设备资产
     *
     * @return 接入设备资产
     */
    public List<AccessDeviceAssetVo> selectByProjectIdAccessDeviceAsset(Long projectId);
    /**
     * 通过医院id来查询接入设备资产
     *
     * @return 接入设备资产
     */
    public List<AccessDeviceAssetVo> selectByHospitalIdAccessDeviceAsset(Long hospitalId);

    /**
     *  查询是否在修改
     */
    public int selectDeviceModify(Long accessDeviceId);

    /**
     * 重新设置修改状态
     */
    public int updateDeviceModify(Long accessDeviceId,Integer isModify);
}
